home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 027a / cbutton.zip / PE.CH next >
Text File  |  1991-10-24  |  2KB  |  80 lines

  1. /*
  2.  * pe.ch
  3.  *
  4.  * Taylor Data Services
  5.  *
  6.  * Placed into the Public Domain
  7.  *
  8.  */
  9.  
  10.  
  11.  
  12. // PE command defines
  13.  
  14. #command @ <row>, <col> PE GET <var>;
  15.                         [PICTURE <pic>];
  16.                         [VALID <valid>];
  17.                         [WHEN <when>];
  18.                         [COLOR <color>];
  19.                         [SEND <msg>];
  20.       => SetPos( <row>, <col> );
  21.        ; AAdd(GetList,;
  22.               PEAdd(PE_NORMAL, <(var)>,;
  23.                     { |PE_0| if( PE_0 == NIL, <var>, <var> := PE_0 ) },;
  24.                     <row>, <col>, <pic>,;
  25.                     <{valid}>, <{when}>, <color>);
  26.              );
  27.        ; PE_ShowGet(ATail(GetList));
  28.       [; ATail(GetList):<msg>]
  29.  
  30. #command @ <row>, <col> PE BUTTON <var> ON <onchar> OFF <offchar>;
  31.                         [VALID <valid>];
  32.                         [WHEN <when>];
  33.                         [COLOR <color>];
  34.                         [SEND <msg>];
  35.       => SetPos( <row>, <col> );
  36.        ; AAdd(GetList,;
  37.               PEAdd(PE_BUTTON, <(var)>,;
  38.                     { |PE_0| if( PE_0 == NIL, if(<var>, <onchar>, <offchar>), <var> := (PE_0 == <onchar>) ) },;
  39.                     <row>, <col>,,;
  40.                     <{valid}>, <{when}>, <color>,;
  41.                     { <onchar>, <offchar> });
  42.              );
  43.        ; PE_ShowGet(ATail(GetList));
  44.       [; ATail(GetList):<msg>]
  45.  
  46.  
  47. ***
  48. *   @..SAY..GET
  49. *
  50.  
  51. #command @ <row>, <col> SAY <sayxpr>;
  52.                         [<sayClauses,...>];
  53.                         PE GET <var>;
  54.                         [<getClauses,...>];
  55.       => @ <row>, <col> SAY <sayxpr> [<sayClauses>]                     ;
  56.        ; @ Row(), Col()+1 PE GET <var> [<getClauses>]
  57.  
  58.  
  59.  
  60. // PE get types
  61.  
  62. #define PE_NORMAL 0         // just a regular get field
  63. #define PE_BUTTON 2         // simple button field
  64.  
  65. // PE object element defines
  66.  
  67. #define PE_TYPE  1
  68. #define PE_CARGO 2
  69.  
  70. // default PE values
  71.  
  72. #define PE_BTCHAR Chr(219)  // button .t. symbol
  73. #define PE_BFCHAR Chr(254)  // button .f. symbol
  74.  
  75. // button object elements
  76.  
  77. #define PE_B_ON  1
  78. #define PE_B_OFF 2
  79.  
  80.